import axios from "axios";

// const default_token = "c4ca4238a0b923820dcc509a6f75849b";

const service = axios.create({
  baseURL: "https://api.selanvr.com",
  timeout: 600000,
  // withCredentials: true, //一部请求携带token
  headers: {
    "app-id": "d1e778850feb5cb30ad453a858c3608e",
    // 设置后端需要的传参类型
    "Content-Type": "application/json",
  },
});

axios.defaults.withCredentials = true;
// 添加请求拦截器
service.interceptors.request.use(
  function (config) {
    // 在发送请求之前做些什么
    return config;
  },
  function (error) {
    // 对请求错误做些什么
    console.log(error);
    return Promise.reject(error);
  }
);

// 添加响应拦截器

service.interceptors.response.use(
  function (response) {
    // console.log("响应", response);
    // 2xx 范围内的状态码都会触发该函数。
    // 对响应数据做点什么
    // dataAxios 是 axios 返回数据中的 data
    const dataAxios = response.data;
    // 这个状态码是和后端约定的
    const code = dataAxios.reset;
    if (response?.data.code === 500) {
      console.log("token失效");
      //   router.push("/login");
    }
    return dataAxios;
  },
  function (error) {
    // 超出 2xx 范围的状态码都会触发该函数。
    // 对响应错误做点什么
    console.log(error);

    return Promise.reject(error);
  }
);

export { service };
